package monitormercado.framework;

import java.util.Date;

import monitormercado.util.Util;

public enum PeriodoAgendamento {
	
	MINUTO(1000*60), HORA(1000*60*60), SEIS_HORAS(1000*60*60*6), DIA (1000*60*60 * 24);
	
	private long periodo; 
	
	private PeriodoAgendamento(long periodo) {
		this.periodo = periodo;
	}
	
	public Date getProximoTempo(Date tempo, int numeroPeriodos) {
		return Util.somaData(tempo,periodo * numeroPeriodos);
	}
	
	/**
	 * Retorna verdadeiro se o tempoAtual atingiu o proximo tempo 
	 * @param tempoAtual
	 * @param proximoTempo
	 * @return
	 */
	public boolean isNoTempo(Date tempoAtual,Date proximoTempo) {
		return tempoAtual.compareTo(proximoTempo)>=0;
		
	}
	
}
